草庐IT

sqlite - SQLite的小数位问题

全部标签

ruby-on-rails - Ruby/Rails - 用两个词命名的模型(命名约定问题)

这真的是一个关于命名约定的问题。我有一个名为PromotedEvents的模型该文件名为promoted_events.rb我创建了这个表:create_table:promoted_eventsdo|t|现在我在创建任何东西时都遇到了问题,所以我想知道使用带有两个词的模型是否存在问题我在控制台中尝试了a=PromotedEvents.newa=Promoted_Event.newa=promoted_event.new并不断收到nameerror:uninitializedconstant错误有什么想法吗? 最佳答案 你的类(cl

ruby - 字符串问题的符号

以下代码失败world=:worldresult='hello'+worldputsresult#=>can'tconvertSymbolintoString以下代码有效world=:worldresult="hello#{world}"putsresult#=>helloworld为什么?使用ruby1.8.7 最佳答案 字符串插值是一个隐式的to_s调用。所以,像这样:result="hello#{expr}"或多或少等同于此:result="hello"+expr.to_s正如karim79所说,符号不是字符串,但符号确实具有

ruby - 如果 float 不是 .00 则只显示小数点 sprintf/printf

我很喜欢格式化一个float,但如果没有相关的float,我希望它显示为一个整数。即1.20->1.2x1.78->1.78x0.80->0.8x2.00->2x我可以通过一些正则表达式来实现这一点,但想知道是否有一个sprintf-only方法可以做到这一点?我在ruby​​中懒洋洋地这样做:("%0.2fx"%(factor/100.0)).gsub(/\.?0+x$/,'x') 最佳答案 您想使用%g而不是%f:"%gx"%(factor/100.00) 关于ruby-如果floa

ruby-on-rails - to_d 在 ruby​​ 中总是返回 2 个小数位

我正在处理货币,我想将数字向下舍入到小数点后两位。即使数字是500.0,我也希望它是500.00以保持一致。当我执行“500.00”.to_d时,它会将其转换为500.0。改变这种行为的好方法是什么?我还使用这种方法向下舍入到2位数字,并确保它始终有2位小数。defself.round_down(x,n=2)s=x.to_sl=s.index('.')?s.index('.')+1+n:s.lengths=s[0,l]s=s.index('.')?s.length-(s.index('.')+1)==1?s 最佳答案 除了mcfin

ruby - Ruby Koans 的test_changing_hashes 中的bonus 问题的答案是什么?

在RubyKoans,about_hashes.rb部分包含以下代码和注释:deftest_changing_hasheshash={:one=>"uno",:two=>"dos"}hash[:one]="eins"expected={:one=>"eins",:two=>"dos"}assert_equaltrue,expected==hash#BonusQuestion:Whywas"expected"brokenoutintoavariable#ratherthanusedasaliteral?end我无法在评论中找到奖金问题的答案-我尝试实际进行他们建议的替换,结果是一样的。我

ruby - "rmagick"gem 安装问题

我在尝试在centos上安装“rmagick”gem时遇到问题。以下是我的输出。任何人都可以帮我确定我缺少什么包吗?我已经安装了所有提到的另一个堆栈溢出线程:RMagickinstallerrorBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingrmagick:ERROR:Failedtobuildgemnativeextension./usr/local/bin/rubyextconf.rbcheckingforRubyversion>=1.8.5...yescheckingforgcc...yes

ruby-on-rails - Rails 3. 如何在编辑表单中显示两位小数?

我有这个编辑表单。但是当我存储诸如1.5之类的东西时,我想将其显示为1.50。我如何使用表单助手来做到这一点?'cost'%> 最佳答案 您应该使用number_with_precision助手。Seedoc.例子:number_with_precision(1.5,:precision=>2)=>1.50在你的表单助手中:'cost',:value=>(number_with_precision(f.object.cost,:precision=>2)||0)%>顺便说一句,如果你真的想显示一些价格,请使用number_to_cu

ruby-on-rails - Rails 事件记录查找 ( :all, :order => ) 问题

我似乎无法一次对多个列使用ActiveRecord::Base.find选项:order。例如,我有一个包含日期和参加列的“Show”模型。如果我运行以下代码:@shows=Show.find(:all,:order=>"date")我得到以下结果:[#,#,#,#,#]如果我运行下面的代码:@shows=Show.find(:all,:order=>"attendingDESC")[#,#,#,#,#]但是,如果我运行:@shows=Show.find(:all,:order=>"date,attendingDESC")或@shows=Show.find(:all,:order=>"

ruby-on-rails - gem安装权限问题

qichunren@zhaobak:~>geminstallhpricotERROR:Whileexecutinggem...(Gem::FilePermissionError)Youdon'thavewritepermissionsintothe/opt/ruby-enterprise-1.8.7/lib/ruby/gems/1.8directory.当前登录用户是qichunren,qichunre用户对.gem目录有写权限。我想知道为什么gem不先安装文件到我家的.gem目录?为什么我的gemcommon首先要安装文件到/opt/ruby-enterprise-1.8.7/lib

ruby-on-rails - 将应用程序推送到 heroku 问题

我正在尝试将我的应用程序推送到heroku,但我收到以下消息:$herokucreateCreatingelectric-meadow-15.....doneCreatedhttp://electric-meadow-15.heroku.com/|git@heroku.com:electric-meadow-15.git$gitpushherokumaster!Nosuchappasfierce-fog-63fatal:Theremoteendhungupunexpectedly我现在得到这个很奇怪,我已经多次将该应用程序推送到heroku没有问题。特别奇怪的是,fierce-fog-